<?php

namespace app\common\service;

use think\Request;
use OSS\OssClient;
use OSS\Core\OssException;

class UplondsPhoto
{
    //封装阿里云上传oss存储  宋梓萌


    public static function uploads($file)
    {
        //获取图片的本地路径和规格信息
        $path = $file->getRealPath();
        $ext = $file->getOriginalExtension();


// 阿里云账号AccessKey拥有所有API的访问权限，风险很高。强烈建议您创建并使用RAM用户进行API访问或日常运维，请登录RAM控制台创建RAM用户。
        $accessKeyId = "LTAI5tHhBYBnW1GCXsZXh5Rp";
        $accessKeySecret = "19dBLk1bgIYFL4poaRO15CklzzhNBc";
// yourEndpoint填写Bucket所在地域对应的Endpoint。以华东1（杭州）为例，Endpoint填写为https://oss-cn-hangzhou.aliyuncs.com。
        $endpoint = "https://oss-cn-shanghai.aliyuncs.com";
// 填写Bucket名称，例如examplebucket。
        $bucket = "songphoto";
// 填写Object完整路径，例如exampledir/exampleobject.txt。Object完整路径中不能包含Bucket名称。
        $object = mt_rand(1111, 9999) . '.' . $ext;
// <yourLocalFile>由本地文件路径加文件名包括后缀组成，例如/users/local/myfile.txt。
// 填写本地文件的完整路径，例如D:\\localpath\\examplefile.txt。如果未指定本地路径，则默认从示例程序所属项目对应本地路径中上传文件。
        $filePath = $path;

        try {
            $ossClient = new OssClient($accessKeyId, $accessKeySecret, $endpoint);

            $ossClient->uploadFile($bucket, $object, $filePath);
        } catch (OssException $e) {
            printf(__FUNCTION__ . ": FAILED\n");
            printf($e->getMessage() . "\n");
            return;
        }
        print(__FUNCTION__ . "OK" . "\n");

    }
}